﻿using System;
using SharpSqlAnalyzer.nodes.mssql;

namespace SharpSqlAnalyzer.nodes
{
	// Token: 0x020002F1 RID: 753
	public class TIfSqlNode : TParseTreeNode
	{
		// Token: 0x06001A79 RID: 6777 RVA: 0x0032E0B8 File Offset: 0x0032C2B8
		public void setElseStmts(TStatementListSqlNode n)
		{
			this.elseStmts = n;
		}

		// Token: 0x06001A7A RID: 6778 RVA: 0x0032E0C1 File Offset: 0x0032C2C1
		public void setElseIfList(TElseIfSqlNodeList l)
		{
			this.elseIfList = l;
		}

		// Token: 0x06001A7B RID: 6779 RVA: 0x0032E0CA File Offset: 0x0032C2CA
		public void setThenStmts(TStatementListSqlNode n)
		{
			this.thenStmts = n;
		}

		// Token: 0x170005E6 RID: 1510
		// (get) Token: 0x06001A7D RID: 6781 RVA: 0x0032E0DC File Offset: 0x0032C2DC
		// (set) Token: 0x06001A7C RID: 6780 RVA: 0x0032E0D3 File Offset: 0x0032C2D3
		public virtual int StmtType
		{
			get
			{
				return this.stmtType;
			}
			set
			{
				this.stmtType = value;
			}
		}

		// Token: 0x170005E7 RID: 1511
		// (get) Token: 0x06001A7E RID: 6782 RVA: 0x0032E0E4 File Offset: 0x0032C2E4
		public virtual TExpression Condition
		{
			get
			{
				return this.condition;
			}
		}

		// Token: 0x170005E8 RID: 1512
		// (get) Token: 0x06001A7F RID: 6783 RVA: 0x0032E0EC File Offset: 0x0032C2EC
		public virtual TMssqlCreateTriggerUpdateColumnList UpdateColumnList
		{
			get
			{
				return this.updateColumnList;
			}
		}

		// Token: 0x06001A80 RID: 6784 RVA: 0x0032E0F4 File Offset: 0x0032C2F4
		public override void init(object arg1, object arg2, object arg3)
		{
			if (arg1 is TExpression)
			{
				this.condition = (TExpression)arg1;
			}
			else
			{
				this.updateColumnList = (TMssqlCreateTriggerUpdateColumnList)arg1;
			}
			if (arg2 != null)
			{
				this.stmtSqlNode = (TStatementSqlNode)arg2;
			}
			if (arg3 != null)
			{
				this.elseStmtSqlNode = (TStatementSqlNode)arg3;
			}
		}

		// Token: 0x170005E9 RID: 1513
		// (get) Token: 0x06001A81 RID: 6785 RVA: 0x0032E141 File Offset: 0x0032C341
		public virtual TStatementSqlNode ElseStmtSqlNode
		{
			get
			{
				return this.elseStmtSqlNode;
			}
		}

		// Token: 0x170005EA RID: 1514
		// (get) Token: 0x06001A82 RID: 6786 RVA: 0x0032E149 File Offset: 0x0032C349
		public virtual TStatementSqlNode StmtSqlNode
		{
			get
			{
				return this.stmtSqlNode;
			}
		}

		// Token: 0x170005EB RID: 1515
		// (get) Token: 0x06001A84 RID: 6788 RVA: 0x0032E15A File Offset: 0x0032C35A
		// (set) Token: 0x06001A83 RID: 6787 RVA: 0x0032E151 File Offset: 0x0032C351
		public virtual TElseIfSqlNodeList ElseIfList
		{
			get
			{
				return this.elseIfList;
			}
			set
			{
				this.elseIfList = value;
			}
		}

		// Token: 0x170005EC RID: 1516
		// (get) Token: 0x06001A86 RID: 6790 RVA: 0x0032E16B File Offset: 0x0032C36B
		// (set) Token: 0x06001A85 RID: 6789 RVA: 0x0032E162 File Offset: 0x0032C362
		public virtual TStatementListSqlNode ElseStmts
		{
			get
			{
				return this.elseStmts;
			}
			set
			{
				this.elseStmts = value;
			}
		}

		// Token: 0x170005ED RID: 1517
		// (get) Token: 0x06001A87 RID: 6791 RVA: 0x0032E173 File Offset: 0x0032C373
		// (set) Token: 0x06001A88 RID: 6792 RVA: 0x0032E17B File Offset: 0x0032C37B
		public virtual TStatementListSqlNode ThenStmts
		{
			get
			{
				return this.thenStmts;
			}
			set
			{
				this.thenStmts = value;
			}
		}

		// Token: 0x040019A0 RID: 6560
		private TStatementSqlNode stmtSqlNode;

		// Token: 0x040019A1 RID: 6561
		private TStatementSqlNode elseStmtSqlNode;

		// Token: 0x040019A2 RID: 6562
		private int stmtType = 1;

		// Token: 0x040019A3 RID: 6563
		private TExpression condition;

		// Token: 0x040019A4 RID: 6564
		private TMssqlCreateTriggerUpdateColumnList updateColumnList;

		// Token: 0x040019A5 RID: 6565
		private TStatementListSqlNode thenStmts;

		// Token: 0x040019A6 RID: 6566
		private TStatementListSqlNode elseStmts;

		// Token: 0x040019A7 RID: 6567
		private TElseIfSqlNodeList elseIfList;
	}
}
